// my/pages/bindPhone/bindPhone.js
import { BASE_URL } from "../../../http/config";

Page({
  data: {
    userId: null,
    mobile: null
  },

  formatMobile(mobile) {
    if (!mobile) return '';
    return mobile.replace(/(\d{3})\d*(\d{2})$/, '$1******$2');
  },

  getUserInfo() {
    return new Promise((resolve, reject) => {
      // 检查 userId 是否存在
      if (!this.data.userId) {
        return reject('用户ID不存在，请先登录');
      }
      
      wx.request({
        url: `${BASE_URL}/systemUsers/${this.data.userId}`,
        method: 'GET',
        success: (res) => {
          console.log('获取用户信息响应:', res);
          if (res.data.code === 200) {
            resolve(res.data.data.mobile);
          } else {
            reject(res.data.message || '获取用户信息失败');
          }
        },
        fail: () => {
          reject('网络错误，获取用户信息失败');
        }
      });
    });
  },

  onLoad(options) {
    const app = getApp();
    
    // 检查用户信息是否存在
    if (!app.globalData.userInfo || !app.globalData.userInfo.id) {
      console.error('用户未登录或用户信息不完整');
      
      wx.showToast({
        title: '请先登录',
        icon: 'none'
      });
      
      // 跳转到登录页面
      setTimeout(() => {
        wx.navigateTo({
          url: '/pages/login/login'
        });
      }, 1500);
      
      return;
    }
    
    // 获取用户ID
    const userId = app.globalData.userInfo.id;
    console.log("当前用户id为:", userId);
    
    // 设置用户ID并获取手机号
    this.setData({
      userId: userId
    });
    
    this.getUserInfo()
      .then((mobile) => {
        this.setData({
          mobile: this.formatMobile(mobile)
        });
      })
      .catch((error) => {
        wx.showToast({
          title: error.message || '获取手机号失败',
          icon: 'none'
        });
      });
  }
});